package com.livelab.model;

/**
 * Relational Database Utility Class: DefaultExercise
 * 
 * @author Dakota
 */
public class Exercise {
    private String exerciseName;            
    private String exerciseDescription;
    private boolean gradable;                   //marks if the exercise can be run
    
    private String inputA, inputB, inputC;      //program input
    private String outputA, outputB, outputC;   //output expected for each input
    
    /**
     * Constructor
     * 
     * @param exerciseName  -- Exercise name
     * @param exerciseDescription   -- Description of what exercise does
     * @param gradable  -- Flag noting runnability of exercise
     * @param inputA -- test input a
     * @param inputB -- test input b
     * @param inputC -- test input c
     * @param outputA -- expected output for input a
     * @param outputB -- expected output for input b
     * @param outputC -- expected output for input c
     */
    public Exercise(String exerciseName, String exerciseDescription, boolean gradable, String inputA, String inputB, String inputC, String outputA, String outputB, String outputC){
        this.exerciseName = exerciseName;
        this.exerciseDescription = exerciseDescription;
        this.gradable = gradable;
        
        this.inputA = inputA;
        this.inputB = inputB;
        this.inputC = inputC;
        
        this.outputA = outputA;
        this.outputB = outputB;
        this.outputC = outputC;
    }
    
    /*
     * GETTERS
     */
    
    public String getExerciseDescription(){
        return exerciseDescription;
    }
    
    public String getExerciseName(){
        return exerciseName;
    }
    
    public boolean getGradable(){
        return gradable;
    }
    
    public String getInputA(){
        return inputA;
    }
    public String getInputB(){
        return inputB;
    }
    public String getInputC(){
        return inputC;
    }
    
    public String getOutputA(){
        return outputA;
    }
    
    public String getOutputB(){
        return outputB;
    }
    public String getOutputC(){
        return outputC;
    }
}
